package com.hr.剑指offer.work2.array;

/**
 * @author ：zhz
 * @date ：Created in 2020/12/05
 * @version: V1.0
 * @slogan: 天下风云出我辈，一入代码岁月催
 * @description: 盛最多水的容器
 **/
public class MaxArea_11 {
    /**
     * 暴力法，遍历所有情况的，用长（j-i）*宽的最小值（Math.min(height[i],height[j])），取最大值
     * @param height
     * @return
     */
    public int maxArea(int[] height) {
        int max = 0;
        for (int i = 0; i < height.length - 1; i++) {
            for (int j = i + 1; j < height.length; j++) {
                int area=(j-i)*Math.min(height[i],height[j]);
                max=Math.max(max,area);
            }
        }
        return max;
    }
    //左右边界，中间收拢
    public int maxArea1(int[] height) {
        int max=0;
        int j=height.length-1;
        for (int i = 0; i < j;) {
            int minHeight=height[i]<height[j]?height[i++]:height[j--];
            int area=(j-i+1)*minHeight;
            max=Math.max(max,area);
        }
        return max;
    }
}
